nexus\api\data_link/
nexus.rs1use super::{get_resource, read_resource};
2use imgui::sys::ImFont;
3
4pub const NEXUS_LINK: &str = NexusLink::LINK;
6
7#[derive(Debug, Clone)]
9#[cfg_attr(feature = "serde", derive(serde::Serialize))]
10#[repr(C)]
11pub struct NexusLink {
12 pub width: u32,
13 pub height: u32,
14 pub scaling: f32,
15 pub is_moving: bool,
16 pub is_camera_moving: bool,
17 pub is_gameplay: bool,
18
19 #[cfg_attr(feature = "serde", serde(skip))]
20 pub font: *mut ImFont,
21
22 #[cfg_attr(feature = "serde", serde(skip))]
23 pub font_big: *mut ImFont,
24
25 #[cfg_attr(feature = "serde", serde(skip))]
26 pub font_ui: *mut ImFont,
27}
28
29impl NexusLink {
30 pub const LINK: &str = "DL_NEXUS_LINK";
32
33 #[inline]
35 pub fn get() -> *const Self {
36 get_resource(Self::LINK)
37 }
38
39 #[inline]
41 pub fn read() -> Option<NexusLink> {
42 unsafe { read_resource(Self::LINK) }
43 }
44}
45
46#[inline]
48pub fn get_nexus_link() -> *const NexusLink {
49 NexusLink::get()
50}
51
52#[inline]
54pub fn read_nexus_link() -> Option<NexusLink> {
55 NexusLink::read()
56}